Automated mechanical approval of advertisement copy

ABSTRACT

Methods, systems, and apparatus for evaluating an advertisement. In one aspect, a method includes receiving an electronic file comprising an advertisement; receiving one or more ad space parameters associated with a publication; comparing one or more attributes of the advertisement with the one or more ad space parameters; generating results based on the comparison of the one or more attributes of the advertisement with the one or more ad space parameters; determining whether to accept the advertisement for publication based on the generated results; and altering at least one of the one or more attributes of an unaccepted advertisement such that it conforms with a corresponding ad space parameter.

This application claims priority to U.S. Provisional Patent ApplicationSer. No. 60/973,146 filed on Sep. 17, 2007, entitled “System and Methodfor Automated Mechanical Approval of Advertisement Copy.” The disclosureof the prior application is considered part of, and is incorporated byreference in, the disclosure of this application.

TECHNICAL FIELD

The following disclosure relates to computer-implemented systems andtechniques for automatically evaluating an advertisement, and fordetermining whether a received advertisement complies with one or moremechanical requirements specified by a publisher.

BACKGROUND

Advertisers can submit advertising copy (or “ad copy”) to a publisherfor inclusion in a printed publication, such as a newspaper or amagazine. Typically, the ad copy can be provided in the form of a proof,which presents the advertisement using the format in which theadvertisement should be run. The proof can be in hard copy form orelectronic form. The publisher then can manually process the proof toincorporate it into the printed publication.

An advertiser typically also specifies the placement of the ad copy inthe printed publication, including parameters such as the edition inwhich the ad copy is to appear, the page on which the ad copy is to run,and the size of the advertisement. If the ad copy supplied by theadvertiser fails to satisfy one or more threshold criteria, the ad copymay not be included in the desired printed publication. Further, manualprocessing of the ad copy can delay notification to the advertiser thata piece of ad copy fails to satisfy one or more criteria.

An advertiser also must determine what advertising space is availablefor a particular edition of a printed publication. Typically, anadvertiser can interact with the publisher to determine the format ofthe printed publication and the advertisement sizes available. Forexample, the size of an advertisement can be expressed using a number ofparameters, including the height, width, and/or number of columns. Theavailable advertising space can change between editions and also betweensections of a single edition.

Once made, an offer to purchase advertising space in a printedpublication is evaluated by the publisher to determine whether the adcopy will be accepted. If the ad copy conforms to the particularspecifications of the advertising space available in a publication, thepublisher can choose to accept the offer. Historically, advertisers havenegotiated terms directly with the publisher, such as through a salesrepresentative. For example, a publisher could provide standard ratesand terms for a particular publication. If an advertiser accepted thoseterms, the ad copy would be placed in the printed publication. Further,a publisher can offer special terms or preferential pricing, such as forvolume customers and new advertisers. Generally, the applicable ratesand terms have been provided to advertisers upon request.

SUMMARY

An automated, scalable advertisement (“ad”) evaluation system can beimplemented to evaluate and correct advertisement offers to ensure thatan ad complies with the mechanical specifications corresponding to anavailable ad space. The ad evaluation system can be implemented as anonline, e.g., web-based, automated evaluation and correction tool.

The present inventors recognized the need to develop a system to receivean advertisement associated with an electronic file and submit theadvertisement to an automatic evaluation and correction process. Thesystem can be implemented to compare the size of an advertisementsubmitted for inclusion in a publication with the available ad spacesize in the publication. The system also can be implemented to compareadditional attributes of the advertisement with the mechanicalspecifications of the available ad space in the publication.

In one aspect a computer-implemented method for evaluating anadvertisement includes receiving an electronic file including anadvertisement. One or more ad space parameters associated with apublication are received. One or more attributes of the advertisementare compared with the one or more ad space parameters. Results based onthe comparison of the one or more attributes of the advertisement withthe one or more ad space parameters are generated. Whether to accept theadvertisement for publication based on the generated results isdetermined. Altering at least one of the one or more attributes of anunacceptable advertisement such that it conforms with a corresponding adspace parameter.

This and other aspects can include one or more of the followingfeatures. The generated results can be stored in a database. Thegenerated results can include designating the advertisement forapproval, rejection, or manual review. The generated results can beprovided to an advertiser associated with the advertisement. At leastone of the one or more attributes of the advertisement can be alteredsuch that it conforms with a corresponding ad space parameter. One ormore color attributes of the advertisement can be altered such that itconforms with a corresponding ad space parameter. One or more sizeattributes of the advertisement can be altered such that it conformswith a corresponding ad space parameter. Determining whether to acceptthe advertisement can include evaluating a size of the advertisementrelative to an ad space size defined by the one or more ad spaceparameters. One or more attributes of the altered advertisement can becompared with the one or more ad space parameters. Results can begenerated based on the comparison of the one or more attributes of thealtered advertisement with the one or more ad space parameters. Whetherto accept the altered advertisement for publication based on thegenerated results can be determined.

The techniques described in this specification can be implemented torealize one or more of the following potential advantages. For example,the techniques can be implemented to permit automatically determiningwhether a received advertisement complies with one or more mechanicalrequirements of a publication. In addition, the techniques can beimplemented to automatically evaluate electronic advertisements and tocorrect advertisements that do not comply with the mechanicalrequirements of a publication. Moreover, the techniques can beimplemented to permit automatically comparing the size of one or moreavailable advertisement spaces in a corresponding publication with thesize of an advertisement. The techniques also can be implemented topermit marking an advertisement for manual review if the differencebetween the size of the available advertisement space and the size ofthe advertisement is less than a predetermined threshold. The techniquesalso can be implemented to permit marking an advertisement for rejectionif the difference between the size of the available advertisement spaceand the size of the advertisement exceeds a predetermined threshold.Furthermore, the techniques can be implemented to permit marking anadvertisement for manually review if the difference between the size ofthe available advertisement space and the size of the advertisementfalls within a predetermined range.

The techniques also can be implemented to permit automaticallyinspecting one or more attributes of an advertisement submitted forinclusion in a publication. In addition, the techniques can beimplemented to automatically determine whether the one or moreattributes of an advertisement contain an error or warning, or should besubmitted for manual review based on the results of the inspection.Moreover, the techniques can be implemented to automatically accept,reject or correct an advertisement based on the results of theinspection. Furthermore, the techniques can be implemented to generate anotification to an advertiser if a submitted advertisement is rejected.The notification can include one or more grounds for rejection so thatthe advertiser can correct and resubmit the advertisement. In addition,the techniques can be implemented to automatically processadvertisements containing varying levels of errors and/or warningsdisparately. For example, advertisements with considerable errors can beprevented from being uploaded into an automated advertisement evaluationsystem. Conversely, advertisements with lesser errors can prompt thegeneration of a notification to an advertiser, warning the advertiserthat the advertisement includes one or more errors.

Details of one or more implementations are set forth in the accompanyingdrawings and the description below. Other aspects can be implemented insystems and computer program products, encoded on a computer-readablemedium, operable to cause data processing apparatus to perform suchoperations. Other features, aspects, and advantages will become apparentfrom the description, the drawings, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an exemplary top-level block diagram of the input andoutput process for an automated advertisement evaluation system.

FIG. 2 shows an exemplary block diagram for an automated advertisementevaluation system.

FIG. 3 shows an exemplary flowchart for evaluating the mechanicalspecifications of an advertisement submitted for publication.

FIG. 4 shows a flow diagram describing an exemplary data input processfor automatically evaluating advertisements.

FIG. 5 is a schematic diagram of an exemplary computing device andsystem that can be used to implement automated mechanical approval ofadvertisement copy.

Like reference symbols indicate like elements throughout thespecification and drawings.

DETAILED DESCRIPTION

FIG. 1 shows an exemplary top-level block diagram of the input andoutput process for an automated advertisement evaluation system 100. Theautomated advertisement evaluation system 100 can be implemented as anonline, e.g., web-based, evaluation and correction tool for evaluatingand preparing advertisements for publication. Alternatively, theautomated advertisement evaluation system 100 can be provided by asoftware application installed on a computer system. The automatedadvertisement evaluation system 100 can be implemented to ensure that asubmitted advertisement complies with at least one available advertisingspace and the mechanical specifications of a corresponding publication.The publication can be a printed publication, such as a newspaper or amagazine. Alternatively, the publication can be an electronicpublication with a displayable area, such as a web page or electronicdisplay. A user, e.g., a publisher 105 can input in an automatedadvertisement evaluation system 100 one or more specificationsassociated with an advertising space of a particular publication. Thepublisher 105 can communicate with the automated advertisementevaluation system 100 through a network connection 120. A publisher userinterface can be presented, which can include one or more prompts tospecify information relating to the advertising space specifications ofthe publication. The publisher user interface prompts can include one ormore drop-down menus with pre-populated options corresponding to one ormore advertising space specifications. Alternatively, the user interfaceprompts can include one or more data entry fields, radio buttons,checkboxes, sliders, or other such graphical user interface widgets.Further, the advertising space specifications can include one or moreof: ad space size, line width, resolution, embedded fonts and color, aswell as other such advertisement space specifications.

Evaluation specifications for the evaluation of a submittedadvertisement also can be input in the automated advertisementevaluation system 100. Evaluation specifications can include one or moreof: error tolerances, color ranges, font sizes, font styles, deep packetinspection ranges, size tolerances, as well as other such evaluationspecifications. For example, error tolerances can specify a measure,such as a percentage, by which the size of an advertisement submittedfor inclusion in a publication can differ from the size of the availableadvertising space in the publication. The publisher user interface alsocan include one or more prompts associated with information relating tothe evaluation of a submitted advertisement. An advertisement can besubmitted as an electronic file, such as in an electronic documentformat. For example, an advertisement can be submitted in anAdobe®Acrobat® Portable Document Format (“PDF”).

An advertisement submitted for publication can be input into theautomated advertisement evaluation system 100. The advertisement caninclude ad copy data and other information, such as meta data. A user,such as an advertiser 110, can input the advertisement into theautomated advertisement evaluation system 100. The advertiser 110 cancommunicate with the automated advertisement evaluation system 100through a network connection 125. The advertiser 110 also cancommunicate with the publisher 105 and/or the automated advertisementevaluation system 100 through the network connection 120. Alternatively,an advertisement submitted for publication can be input into theautomated advertisement evaluation system 100 by a publisher 105 or athird party. An advertiser user interface can be presented, which caninclude one or more prompts to specify the advertisement to be inputinto the automated advertisement evaluation system 100. The advertiseruser interface prompts can include one or more drop-down menus withpre-populated options corresponding to one or more advertisements.Alternatively, the prompts can include one or more data entry fields,radio buttons, checkboxes, sliders, or other such graphical userinterface widgets. The other advertisement information can include oneor more of: ad size, format (color or black and white), publicationsection, publication page, font, presentation graphics, as well as othersuch information.

The automated advertisement evaluation system 100 can receive anadvertisement in addition to advertising space specifications andevaluation specifications. Upon receiving the advertisement, advertisingspace specifications and evaluation specifications, the automatedadvertisement evaluation system 100 can automatically submit theadvertisement to an evaluation process. The evaluation process cananalyze the advertisement, based at least in part on the evaluationspecifications of the particular publication for which the advertisementis submitted. The automated advertisement evaluation system 100 also canperform one or more checks to determine whether the advertisementcomplies with the advertising space specifications associated with theparticular publication. The evaluation process can evaluate the size ofthe advertisement to determine whether the dimensions of theadvertisement are acceptable with respect to the size of the availableadvertising space of the particular publication in which theadvertisement is to appear. The evaluation process also can beimplemented to correct any errors that are classified as correctable,which are found during analyzing the advertisement. The evaluationprocess can produce output related to determining whether theadvertisement complies with the advertising space specifications. Theoutput can include classifying an advertisement as approved, rejected,or flagged for manual review. Further, the output can be stored in astorage device 115 operatively coupled to the computer system.Alternatively, the output can be transferred to a remote location overone or more networks for storing. The storage device 115 also can beimplemented to store specifications and requirements for one or morepublications. For example, one or more specifications associated with anadvertising space of a particular publication can be stored in thestorage device 115 and can be input in the automated advertisementevaluation system 100.

When the automated advertisement evaluation system 100 classifies anadvertisement as approved, the advertisement can be submitted forinclusion in a publication. Conversely, by classifying an advertisementas rejected, the automated advertisement evaluation system 100 canindicate that the advertisement contained one or more uncorrectableerrors, which prevented the advertisement from being submitted forinclusion in the publication. The automated advertisement evaluationsystem 100 can generate a notification, e.g., a message, indicating thatthe advertisement has been rejected and will not be included in thepublication. The automated advertisement evaluation system 100 also cansend the notification to, e.g., the advertiser 110. The notification caninclude one or more grounds specifying why the advertisement wasrejected. Upon receiving the notification, the advertiser 110 cancorrect the one or more errors associated with the rejectedadvertisement and can resubmit the advertisement to the automatedadvertisement evaluation system 100 for subsequent approval. Inaddition, the automated advertisement evaluation system 100 can classifyan advertisement as flagged for manual review. Classifying anadvertisement as flagged for manual review can indicate that thesubmitted advertisement requires further evaluation apart from theautomated advertisement evaluation system 100.

FIG. 2 shows an exemplary block diagram for an automated advertisementevaluation system 200. The automated advertisement evaluation system 200can be implemented to receive an advertisement. The receivedadvertisement can be stored in a storage device 205 that is accessibleto the modules of the automated advertisement evaluation system 200. Anevaluation program 230 can connect the applications and modules of theautomated advertisement evaluation system 200. The automatedadvertisement evaluation system 200 can include an attribute checker 210configured to check one or more attributes of the advertisement. The oneor more advertisement attributes can include ad size, color, whitespace, trim box, line width, resolution, embedded fonts, as well asother such attributes. The attribute checker 210 can inspect one or moreattributes of an advertisement submitted for inclusion in a publicationto determine if the advertisement complies with one or more mechanicalrequirements associated with the publication. The attribute checker 210can be any application or module configured to verify one or moreattributes of a file, including a commercially available electronicdocument processing program, such as “pdfInspektor4” by Callas SoftwareGmbH (Berlin, Germany) or “Asura” by OneVision Software AG (Regensburg,Germany).

The automated advertisement evaluation system 200 also can include anattribute corrector 215 configured to correct one or more advertisementattributes. The attribute corrector 215 can correct an advertisementattribute so that the advertisement complies with one or more mechanicalrequirements specified for a target publication. For example, if anadvertisement submitted for inclusion in a publication is larger thanthe ad space size of the publication, the attribute corrector 215 canre-size, scale, manipulate, or otherwise process the advertisement suchthat it will fit in the given ad space size. The attribute corrector 215can be any application or module configured to correct one or moreattributes of a file, including a commercially available electronicdocument processing program, such as “pdfInspektor4” by Callas SoftwareGmbH, or “Asura” by OneVision Software AG.

The automated advertisement evaluation system 200 further can include anevaluator 220, which can evaluate, or otherwise compare, one or moreattributes and/or dimensions of an advertisement with one or moreattributes and/or dimensions of the ad space in a correspondingpublication. The evaluator 220 can produce output corresponding to theevaluation, or comparison, of the advertisement dimensions with thepublication's ad space dimensions. The output produced by the evaluator220 can include messages, e.g., e-mail messages, and can be classifiedas: no error found, error found, warning found, or need for manualreview. The output can be transmitted to a communication interface 225.The communication interface 225 can transmit the output outside theautomated advertisement evaluation system 200.

No error found indicates that the advertisement dimensions are withinthe constraints of the publication's ad space dimensions. Error foundindicates that at least one of the one or more advertisement dimensionsare not within the constraints of the publication's ad space dimensionsand further, are not correctable by the automated advertisementevaluation system 200. For example, if the attribute corrector 215enlarges an advertisement to correspond with the ad space dimensions, aloss in the resolution of the advertisement can be so substantial thatthe evaluator 220 can deem the advertisement unfit for publication.Output indicating that a warning was found indicates that at least oneof the one or more attributes and/or dimensions of an advertisementrequires further evaluation. Further evaluation can include manualreview outside the automated advertisement evaluation system 200. Outputidentifying a need for manual review indicates that at least one of theone or more advertisement attributes or dimensions requires manualevaluation. Manual evaluation can be performed in conjunction with theautomated advertisement evaluation system 200, such as by anadministrator or publisher.

If the evaluator 220 produces output indicating no error found, theadvertisement can be marked as approved by the automated advertisementevaluation system 200. Alternatively, if the evaluator 220 producesoutput indicating that an error was found, the advertisement can bemarked as rejected. If the evaluator 220 produces output indicatingeither that a warning was found or that there is a need for manualreview, the advertisement can be marked as requiring manually review.Thus, depending on the disparity in dimensions between the advertisementand the ad space size, the evaluator 220 can mark the advertisement asapproved, rejected, or requiring manual review.

If an advertisement is rejected, the automated advertisement evaluationsystem 200 can generate an advertiser notification, which can be sentto, e.g., the advertiser submitting the advertisement. The notificationcan be a message notifying the advertiser of errors associated with therejected advertisement. Once corrected, the advertisement can beresubmitted to the automated advertisement evaluation system 200.Additionally, output produced by the evaluator 220 can be stored, suchas in a results database. The results database can be implemented as anonline, e.g., web-based, storage database for organizing andcategorizing advertisement related data.

FIG. 3 shows an exemplary flowchart describing an evaluation process 300for evaluating the mechanical specifications of an advertisementsubmitted for publication. The evaluation process 300 can compare one ormore characteristics and/or parameters associated with an ad withpredetermined criteria and output one or more messages. For example, themessages output as a result of the evaluation process 300 can beclassified as an error, a warning, or a manual review flag. The size ofan advertisement can be evaluated to determine whether the dimensions ofthe advertisement are acceptable with respect to the size of the adspace of a publication in which the advertisement is to appear.Additionally, the evaluation process 300 can be implemented to correctone or more errors discovered in an advertisement that are classified ascorrectable.

An advertisement can be received electronically from an advertiser as anelectronic document and electronically submitted to the evaluationprocess 301. The advertisement represented by the electronic documentcan be submitted to a trim box check to determine whether theadvertisement includes a trim box or a trim box with crop marks (302). Atrim box can include a shape, e.g., a box, that outlines the printablearea of an advertisement. If a trim box is detected, the advertisementcan be cropped in accordance with the trim box (304). Otherwise, theadvertisement can be submitted to a registration color check (306). Theregistration color check (306) can be implemented to detect crop marksat, e.g., the four corners of an advertisement's rectangular printablearea. If a registration color is detected, the advertisement can becropped in accordance with the registration color (308). Otherwise, theadvertisement can be submitted to a white space check (310). The whitespace check (310) can be implemented to detect excess white spaceoutside of the advertisement's printable area. If white space isdetected, the advertisement can be cropped in accordance with the whitespace (312). If the advertisement includes no trim box, no registrationcolor crop marks and no white space, the advertisement can be evaluatedwith respect to the advertisement's size information (314). Similarly,if the advertisement was cropped in response to a trim box, registrationcolor, or white space, the cropped advertisement can be evaluated withrespect to size (314).

For example, one or more dimensions of the electronic documentrepresenting an advertisement can be compared with one or moredimensions of the advertising space in a corresponding publication. Ifthe difference between the size of the advertisement and the size of theadvertising space differs with respect to one or more dimensions by morethan a predetermined maximum value, the advertisement can be marked forrejection based on size (316). For example, if the size of theadvertisement differs from the size of the advertising space by morethan five percent, the advertisement can be automatically rejected.

If the difference between the size of the advertisement and the size ofthe advertising space differs by less than a predetermined minimum valuewith respect to all dimensions, the advertisement can be marked for sizeapproval (318). For example, if the size of the advertisement differsfrom the size of the advertising space by less than two percent for alldimensions, the advertisement can be automatically accepted.

If the difference between the size of the advertisement and the size ofthe advertising space for one or more dimensions falls within apredetermined range, and the difference for each of the dimensions isless than the predetermined maximum value, the advertisement can bemarked for manual evaluation (320). For example, if the size of theadvertisement differs from the size of the advertising space by betweentwo and five percent for any dimension and by less than five percent forall dimensions, the advertisement can be flagged for manual evaluation.

The amount by which the size of the advertisement can differ from thesize of the advertising space can be set to any value. Further, theamount by which the size of the advertisement can differ from the sizeof the advertising space can be specified by an individual publisher,such that tolerable differences can vary by publication. The results ofthe size comparison for an advertisement can be recorded, such as in adatabase or other such data structure (319).

The advertisement can be presented to a main inspector check (322). Themain inspector check can be configured to evaluate one or moreattributes of an advertisement to detect any problems, including linewidth, resolution, and embedded fonts, as well as other suchadvertisement attributes. The attributes evaluated can be selected basedon the mechanical requirements for an advertisement specified by thepublisher to whom the advertisement will be provided. Further, one ormore general attributes also can be evaluated. The results of the maininspector check evaluation (322) can be recorded, such as in a databaseor other such data structure (323).

If errors are found during the main inspector check, the advertisementcan be automatically rejected (324). If no errors are found, theadvertisement can be submitted to a warning inspection (325). Ifwarnings are found during the warning inspection (325), or if the manualevaluation flag is set, the advertisement can be submitted to a colorconvert process (326). The color convert process can be configured toresolve one or more color problems associated with an advertisement. Forexample, the color convert process (326) can be configured to remove oneor more colors that resulted in a warning. The color convert process(326) can be performed by any application or module, including acommercially available electronic document processing program, such aspdfColorConvert (or “kolor convert”) by Callas Software GmbH. If nowarnings or errors are found, and if the manual evaluation flag is notset, the advertisement can be submitted to the next evaluation stage inthe evaluation process 300. Further, the results of one or moreevaluations and processes, including the color convert process, can berecorded, such as in a database or other such data structure (327).

If the warning inspection (325) determines that the advertisement neednot be submitted to the color convert process (326), or alternatively,after the advertisement has been submitted to the color convert process(326), the advertisement can be evaluated again to determine if otherwarnings associated with the advertisement remain (328). If any warningsare associated with the advertisement, or if the manual evaluation flagis set, the advertisement also can be submitted to a file correctionprocess (330). The file correction process can be configured to correctany remaining correctable problems affecting the file. The filecorrection process can be performed by one or more applications ormodules. Further, an application or module can be custom or acommercially available product. For example, if the electronic format ofthe advertisement corresponds to an Adobe®Acrobat® PDF, theadvertisement can be submitted to a file correction procedure program,such as pdfCorrect (or “PDF Korrect”) by Callas Software GmbH. Theresults of the file correction procedure (330) can be recorded, such asin a database or other such data structure (329).

If no warnings or manual review flags are associated with theadvertisement, or after the advertisement exits the file correctionprocedure (330), the advertisement can again be evaluated to determineif other warnings (i.e., if the manual evaluation flag remains set)remain associated with the advertisement (332). If no warnings or errorsare found, the advertisement can be automatically accepted (334).Otherwise, if any warnings are associated with the advertisement, or ifthe manual evaluation flag is set, the advertisement can be submittedfor another main inspector check (336). As described above, the maininspector check can be implemented to evaluate one or more attributes ofan advertisement to detect any problems, including line width,resolution, and embedded fonts, as well as other such advertisementattributes. The main inspector check (336) can be executed to verifythat the necessary corrections were satisfactorily performed and toensure that no additional errors exist in the advertisement. The resultsof the main inspector check (336) can be recorded, such as in a databaseor other such data structure (337).

If any errors were found during the main inspector check (336), theadvertisement can be automatically rejected (324). In someimplementations, a notification message can be generated and sent to theparty that submitted the rejected advertisement. Further, thenotification message can include one or more grounds for rejection.Thus, the advertiser can correct one or more errors associated with theadvertisement and then resubmit the advertisement for approval. Afterthe main inspector check (336) has been completed, the advertisement canbe evaluated for warnings, and the presence of a manual evaluation flagin another warning inspection (338). If no warnings were found duringthe warning inspection (338), and if the manual evaluation flag is notset, the advertisement can be automatically accepted (334). Otherwise,if any warnings were found during the warning inspection (338), or ifthe manual evaluation flag is set, the advertisement can be marked formanual evaluation (340).

The advertisement evaluation process 300 can be modified to include oneor more additional checks and/or evaluation processes, to delete one ormore of the described checks and/or processes, and to alter the sequenceof the evaluation process. In addition, the evaluation process 300 canbe modified based on the mechanical requirements of the particularpublication in which an advertisement is to appear. In someimplementations, results can be recorded in a single database or record.For example, the databases 319, 323, 327, 329, and 337 can beimplemented as a single database. In other implementations, thedatabases 319, 323, 327, 329, and 337 can be separate databases.

FIG. 4 shows a flow diagram describing an exemplary data input process400 for automatically evaluating advertisements. The data input process400 can, for example, be implemented in the automated advertisementevaluation systems 100 and 200 of FIGS. 1 and 2, respectively, and theevaluation process 300 of FIG. 3.

An electronic file comprising an advertisement can be received in anautomated advertisement evaluation system (405). The advertisement canbe submitted to the automated advertisement evaluation system as anelectronic file, such as in an electronic document format. In someimplementations, the electronic document format can be Adobe® Acrobat®PDF. Further, the electronic file can be received from amachine-readable storage device over a communication network, a scanner,a portable data storage device, or other such electronic datatransmitting and/or sharing devices. A graphical user interface can beused to indicate where the electronic file is stored and/or to uploadthe electronic file to the machine-readable storage device.Additionally, the electronic file can be submitted by an advertiser, apublisher, or a third party, such as through a graphical user interface.The electronic file can include graphics, text, borders, crop marks,white space, animations, meta data, as well as other such electronicfile characteristics.

One or more ad space parameters associated with a publication can bereceived (410). The publication can be an electronic publication, suchas an electronic magazine (or “e-zine”) or weblog (or “blog”).Alternatively, the publication can be a print publication, such as anewspaper or magazine. The automated advertisement evaluation system canreceive the one or more ad space parameters related to a publicationfrom a machine-readable storage device over a communication network, aportable data storage device, or other such electronic data transmittingand/or storing devices. The one or more ad space parameters can besubmitted by a publisher of the corresponding publication in which theadvertisement is to appear. The one or more ad space parameters caninclude ad space size, line width, resolution, embedded fonts, color,publication section, as well as other such ad space parameters.

One or more attributes of the advertisement can be compared with the oneor more ad space parameters (415). The one or more attributes of theadvertisement can include ad size, line width, resolution, embeddedfonts, color, publication page, publication section, presentationgraphics, as well as other such advertisement attributes. The automatedadvertisement evaluation system can compare the one or more attributesof an advertisement with the one or more ad space parameters. Forexample, the automated advertisement evaluation system can compare thesize of an advertisement submitted for inclusion in a publication withthe ad space size of the publication. In such an example, if the size ofthe advertisement meets the mechanical specifications of the ad space inthe publication, then the advertisement can be included in thepublication. The comparison can occur automatically upon the automatedadvertisement evaluation system receiving an advertisement and one ormore ad space parameters related to a publication.

One or more results can be generated based on the comparison of the oneor more attributes of the advertisement with the one or more ad spaceparameters (420). The results can be submitted as output after theautomated advertisement evaluation system completes the comparison ofthe one or more attributes with the one or more ad space parameters.Further, the results can be output as standard messages, such as noerror, error, warning, or manual review. Based on the results, theautomated advertisement evaluation system can mark the advertisement asapproved, rejected, or flagged for manual evaluation. Marking anadvertisement as approved can indicate that the one or more attributesof the advertisement were in accordance with the one or more ad spacerequirements of the publication and that no errors were present in theadvertisement. Marking an advertisement as rejected can indicate thatone or more errors found in the advertisement are not correctable andthus, the advertisement is not ready for publication. Flagging anadvertisement for manual evaluation can indicate that one or morewarnings were detected with respect to one or more attributes of theadvertisement and that the advertisement requires manual review.Further, the results can be stored, such as in an electronic database.Additionally, the results can be categorized and organized for futurepublications.

Determine that the advertisement is to be accepted in the publicationbased on the generated results (425). The automated advertisementevaluation system can determine to include the advertisement in thepublication according to one or more factors, such as predeterminedpublication error tolerance values. For example, if the advertisement'sdimensions fall within a predetermined error tolerance range for theparticular publication's mechanical specifications, then the automatedadvertisement evaluation system can mark the advertisement as approvedand can determine that the advertisement should be included in thepublication. Alternatively, if the advertisement's dimensions falloutside a predetermined error tolerance range for the particularpublication's mechanical specifications, then the automatedadvertisement evaluation system can mark the advertisement as rejectedand can determine that the advertisement should not be included in thepublication. Moreover, if the advertisement's dimensions are in betweenthe error tolerance range for automatic approval and automatic rejectionfor the particular publication's mechanical specifications, then theautomated advertisement evaluation system can flag the advertisement formanual review.

Alter at least one of the one or more attributes of an unacceptedadvertisement such that it conforms with a corresponding ad spaceparameter (430). The automated advertisement evaluation system can alterat least one of the one or more attributes of an advertisement which hasbeen determined to be unacceptable for inclusion in a publication. Forexample, the automated advertisement evaluation system can alter one ormore color attributes of the advertisement such that it conforms with acorresponding ad space parameter. Alternatively, the automatedadvertisement evaluation system can alter one or more size attributes ofthe advertisement such that it conforms with a corresponding ad spaceparameter. Moreover, the automated advertisement evaluation system canalter one or more color attributes and one or more size attributes ofthe advertisement such that it conforms with the corresponding ad spaceparameters. The automated advertisement evaluation system can determineto include the altered advertisement in the publication.

FIG. 5 is a schematic diagram of an example computing device and systemthat can be used to implement automated mechanical approval ofadvertisement copy. Computing device 500 is intended to representvarious forms of digital computers, such as laptops, desktops,workstations, personal digital assistants, servers, mainframes, andother appropriate computers. The components shown here, theirconnections and relationships, and their functions, are meant to beexemplary only.

Computing device 500 includes a processor 502, memory 504, a storagedevice 506, a high-speed interface 508 connecting to memory 504 andhigh-speed expansion ports 510, and a low speed interface 512 connectingto low speed bus 514 and storage device 506. Each of the components 502,504, 506, 508, 510, and 512, are interconnected using various buses, andcan be mounted on a common motherboard or in other manners asappropriate. The processor 502 can process instructions for executionwithin the computing device 500, including instructions stored in thememory 504 or on the storage device 506 to display graphical informationfor a GUI on an external input/output device, such as display 516coupled to high speed interface 508. Multiple processors and/or multiplebuses can be used, as appropriate, along with multiple memories andtypes of memory. Also, multiple computing devices 500 can be connected,with each device providing portions of the necessary operations, e.g.,as a server bank, a group of blade servers, or a multi-processor system.

The memory 504 stores information within the computing device 500. Thememory 504 can be a computer-readable medium. The memory 504 can be avolatile memory unit or units. The memory 504 can be a non-volatilememory unit or units.

The storage device 506 is capable of providing mass storage for thecomputing device 500. The storage device 506 can be a computer-readablemedium. The storage device 506 also can be a floppy disk device, a harddisk device, an optical disk device, or a tape device, a flash memory orother similar solid state memory device, or an array of devices,including devices in a storage area network or other configurations. Acomputer program product can be tangibly embodied in an informationcarrier. The computer program product can contain instructions that,when executed, perform one or more methods, such as those describedabove. The information carrier can be a computer- or machine-readablemedium, such as the memory 504, the storage device 506, memory onprocessor 502, or a propagated signal.

The high speed controller 508 can manage bandwidth-intensive operationsfor the computing device 500, while the low speed controller 512 canmanage lower bandwidth-intensive operations. Such allocation of dutiesis exemplary only. The high-speed controller 508 can be coupled tomemory 504, display 516 (e.g., through a graphics processor oraccelerator), and to high-speed expansion ports 510, which can acceptvarious expansion cards (not shown). The low-speed controller 512 can becoupled to storage device 506 and low-speed expansion port 514. Thelow-speed expansion port 514, which can include various communicationports (e.g., USB, Bluetooth, Ethernet, wireless Ethernet) can be coupledto one or more input/output devices, such as a keyboard, a pointingdevice, a scanner, or a networking device such as a switch or router,e.g., through a network adapter.

The computing device 500 can be implemented in a number of differentforms, as shown in the figure. For example, it can be implemented as astandard server 520, or multiple times in a group of such servers. Itcan also be implemented as part of a rack server system 524. Inaddition, it can be implemented in a personal computer such as a laptopcomputer 522.

Various implementations of the subject matter described herein may berealized in digital electronic circuitry, integrated circuitry,specially designed ASICs (application specific integrated circuits),computer hardware, firmware, software, and/or combinations thereof.These various implementations may include implementation in one or morecomputer programs that are executable and/or interpretable on aprogrammable system including at least one programmable processor, whichmay be special or general purpose, coupled to receive data andinstructions from, and to transmit data and instructions to, a storagesystem, at least one input device, and at least one output device.

These computer programs (also known as programs, software, softwareapplications or code) include machine instructions for a programmableprocessor, and may be implemented in a high-level procedural and/orobject-oriented programming language, and/or in assembly/machinelanguage. As used herein, the term “information carrier” comprises a“machine-readable medium” that includes any computer program product,apparatus and/or device (e.g., magnetic discs, optical disks, memory,Programmable Logic Devices (PLDs)) used to provide machine instructionsand/or data to a programmable processor, including a machine-readablemedium that receives machine instructions as a machine-readable signal,as well as a propagated machine-readable signal. The term“machine-readable signal” refers to any signal used to provide machineinstructions and/or data to a programmable processor.

To provide for interaction with a user, the subject matter describedherein may be implemented on a computer having a display device (e.g., aCRT (cathode ray tube) or LCD (liquid crystal display) monitor) fordisplaying information to the user and a keyboard and a pointing device(e.g., a mouse or a trackball) by which the user may provide input tothe computer. Other kinds of devices can be used to provide forinteraction with a user as well; for example, feedback provided to theuser can be any form of sensory feedback (e.g., visual feedback,auditory feedback, or tactile feedback); and input from the user can bereceived in any form, including acoustic, speech, or tactile input.

The subject matter described herein can be implemented in a computingsystem that includes a back-end component (e.g., as a data server), orthat includes a middleware component (e.g., an application server), orthat includes a front-end component (e.g., a client computer having agraphical user interface or a Web browser through which a user mayinteract with an implementation of the subject matter described herein),or any combination of such back-end, middleware, or front-endcomponents. The components of the system can be interconnected by anyform or medium of digital data communication (e.g., a communicationnetwork). Examples of communication networks include a local areanetwork (“LAN”), a wide area network (“WAN”), and the Internet.

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other.

Although a few variations have been described in detail above, othermodifications are possible. For example, the logic flow depicted in theaccompanying figures and described herein do not require the particularorder shown, or sequential order, to achieve desirable results. Otherembodiments may be within the scope of the following claims.

A number of implementations have been disclosed herein. Nevertheless, itwill be understood that various modifications can be made withoutdeparting from the spirit and scope of the claims. For example, theactions recited in the claims can be performed in a different order andstill achieve desirable results. Accordingly, other implementations arewithin the scope of the following claims.

1. A computer-implemented method for evaluating an advertisement, themethod comprising: receiving an electronic file comprising anadvertisement; identifying attributes of the received advertisement;receiving one or more ad space parameters associated with a printedpublication; receiving an evaluation specification that defines amaximum acceptable variance between the ad space parameters and theattributes; automatically comparing one or more of the attributes of theadvertisement with the one or more ad space parameters and the receivedevaluation specification; automatically generating results based on thecomparison of the one or more attributes of the advertisement with theone or more ad space parameters; automatically determining to accept theadvertisement for publication based on the generated results beingwithin the received evaluation specification; automatically determiningnot to accept the advertisement for publication based on the generatedresults being outside the received evaluation specification; andautomatically altering at least one of the one or more attributes of anunaccepted advertisement such that the attributes satisfy the ad spaceparameters.
 2. The method of claim 1, wherein generating results furthercomprises designating the advertisement for approval, rejection, ormanual review.
 3. The method of claim 2, wherein the unacceptedadvertisement is designated for rejection and excluded from publication.4. The method of claim 1, wherein the attributes comprise at least oneof white space, trim area, line width, resolution, or embedded fonts. 5.The method of claim 1, further comprising altering one or more colorattributes of the advertisement such that it conforms with acorresponding ad space parameter.
 6. The method of claim 1, furthercomprising altering one or more size attributes of the advertisementsuch that it conforms with a corresponding ad space parameter.
 7. Themethod of claim 1, wherein determining whether to accept theadvertisement includes evaluating a size of the advertisement relativeto an ad space size defined by the one or more ad space parameters. 8.The method of claim 1, further comprising: comparing one or more alteredattributes with the one or more ad space parameters; generating resultsbased on the comparison of the one or more altered attributes with theone or more ad space parameters; and determining whether to accept theadvertisement for publication based on the generated results.
 9. Themethod of claim 1, wherein the one or more ad space parameters compriseat least one of line width, resolution, embedded fonts, or publicationsection.
 10. The method of claim 1, wherein evaluation specificationcomprises at least one of error tolerances, color ranges, font sizes,font styles, or size tolerances.
 11. A computer program product, encodedon a non-transitory computer-readable medium, operable to cause dataprocessing apparatus to perform operations comprising: receiving anelectronic file comprising an advertisement; identifying attributes ofthe received advertisement; receiving one or more ad space parametersassociated with a printed publication; receiving an evaluationspecification that defines a maximum acceptable variance between theadvertisement space parameters and the attributes; automaticallycomparing one or more of the attributes of the advertisement with theone or more ad space parameters and the received evaluationspecification; automatically generating results based on the comparisonof the one or more attributes of the advertisement with the one or moread space parameters and the evaluation specification; automaticallydetermining to accept the advertisement for publication based on thegenerated results being within the received evaluation specification;automatically determining not to accept the advertisement forpublication based on the generated results being outside the receivedevaluation specification; and automatically altering at least one of theone or more attributes of an unaccepted advertisement such that the atleast one attribute conforms with a corresponding ad space parameter.12. The computer program product of claim 11, wherein generating resultsfurther comprises designating the advertisement for approval, rejection,or manual review.
 13. The computer program product of claim 12, whereinthe unaccepted advertisement is designated for rejection and excludedfrom publication.
 14. The computer program product of claim 11, furtheroperable to cause data processing apparatus to perform operationscomprising altering one or more size attributes of the advertisementsuch that it conforms with a corresponding ad space parameter.
 15. Thecomputer program product of claim 11, wherein determining whether toaccept the advertisement includes evaluating a size of the advertisementrelative to an ad space size defined by the one or more ad spaceparameters.
 16. The computer program product of claim 11, furtheroperable to cause data processing apparatus to perform operationscomprising: comparing one or more altered attributes with the one ormore ad space parameters; generating results based on the comparison ofthe one or more altered attributes with the one or more ad spaceparameters; and determining whether to accept the advertisement forpublication based on the generated results.
 17. The computer programproduct of claim 11, further operable to cause data processing apparatusto perform operations comprising altering one or more color attributesof the advertisement such that it conforms with a corresponding ad spaceparameter.
 18. The computer program product of claim 11, whereinevaluation specification comprises at least one of error tolerances,color ranges, font sizes, font styles, or size tolerances.
 19. Thesystem of claim 11, wherein evaluation specification comprises at leastone of error tolerances, color ranges, font sizes, font styles, or sizetolerances.
 20. A system comprising: a processor; and a computerreadable medium storing a computer program for evaluating anadvertisement, the computer program comprising instructions to cause theprocessor to perform operations comprising: receiving an electronic filecomprising an advertisement; identifying attributes of the receivedadvertisement; receiving one or more ad space parameters associated witha printed publication; receiving an evaluation specification from thepublisher, the evaluation specification defining a maximum acceptablevariance between the advertisement space parameters and the attributes;automatically comparing one or more of the attributes of theadvertisement with the one or more ad space parameters and the receivedevaluation specification; automatically generating results based on thecomparison of the one or more attributes of the advertisement with theone or more ad space parameters; automatically determining to accept theadvertisement for publication based on the generated results beingwithin the received evaluation specification; automatically determiningnot to accept the advertisement for publication based on the generatedresults being outside the received evaluation specification; andautomatically altering at least one of the one or more attributes of anunaccepted advertisement—such that the attributes satisfy theadvertisement space parameters.
 21. The system of claim 20, wherein theone or more computers comprise a server operable to interact with theuser interface device through a data communication network, and the userinterface device is operable to interact with the server as a client.22. The system of claim 20, the operations further comprising alteringone or more color attributes of the advertisement such that it conformswith a corresponding ad space parameter.
 23. The system of claim 20, theoperations further comprising altering one or more size attributes ofthe advertisement such that it conforms with a corresponding ad spaceparameter.
 24. The system of claim 20, wherein determining whether toaccept the advertisement includes evaluating a size of the advertisementrelative to an ad space size defined by the one or more ad spaceparameters.
 25. The system of claim 20, the operations furthercomprising: comparing one or more altered attributes with the one ormore ad space parameters; generating results based on the comparison ofthe one or more altered attributes with the one or more ad spaceparameters; and determining whether to accept the advertisement forpublication based on the generated results.
 26. The system of claim 20,wherein generating results further comprises designating theadvertisement for approval, rejection, or manual review.
 27. The systemof claim 26, wherein the unaccepted advertisement is designated forrejection and excluded from publication.